chore(release): 4.0.1#210
Open
M-Elsaeed wants to merge 2 commits into
Open
Conversation
Bump version to 4.0.1 and update changelog for the Alpine Linux 3.17+ (musl) build fix (aws#204).
Adds a workflow that detects a change to __version__ in awslambdaric/__init__.py on main, then creates a tag and GitHub Release using notes from RELEASE.CHANGELOG.md. Skips if the release already exists.
benrkia
reviewed
Jun 25, 2026
| - name: Read version | ||
| id: version | ||
| run: | | ||
| VERSION="$(grep -Po '__version__\s*=\s*"\K[^"]+' awslambdaric/__init__.py)" |
There was a problem hiding this comment.
Can we use sed/aws instead (-Po is not posix)
| id: check | ||
| env: | ||
| GH_TOKEN: ${{ github.token }} | ||
| VERSION: ${{ steps.version.outputs.version }} |
There was a problem hiding this comment.
I believe the release check lives with reading the version and no need for a separate step for it and we could drop the extra check if version exists or not
| VERSION: ${{ steps.version.outputs.version }} | ||
| run: | | ||
| if gh release view "$VERSION" >/dev/null 2>&1; then | ||
| echo "exists=true" >> "$GITHUB_OUTPUT" |
There was a problem hiding this comment.
(Nit-pick): I'd rename it to (release_exists or something like that)
| # Trim leading/trailing blank lines. | ||
| sed -i -e '/./,$!d' release-notes.md | ||
| if [ ! -s release-notes.md ]; then | ||
| echo "Release $VERSION" > release-notes.md |
There was a problem hiding this comment.
a version bump always means something changed, having the release body be just the version number isn't useful. I'd prefer the workflow to fail here, forcing the contributor to add a changelog entry before the release is created
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Release
4.0.1of the AWS Lambda Python Runtime Interface Client, plus release automation.Bumps the version from
4.0.0to4.0.1, adds the changelog entry, and adds a workflow to auto-create GitHub Releases on future version bumps.Release content
libexecinfo-dev(fix: support building on Alpine Linux 3.17+ (musl) without libexecinfo-dev #204)multi_concurrent_utils(Lazy load multi-concurrent utilities for cold start improvement #211)Changes
awslambdaric/__init__.py:__version__4.0.0 → 4.0.1RELEASE.CHANGELOG.md: added4.0.1entry.github/workflows/release-on-version-change.yml: new workflow that, on push tomaintouchingawslambdaric/__init__.py, creates a tag + GitHub Release (titledAWS Lambda Runtime Interface Client for Python v<version>) with notes pulled from the matchingRELEASE.CHANGELOG.mdsection. Skips if a release for that version already exists.Notes
GITHUB_TOKENwithcontents: write(scoped to this job only).4.0.1release automatically.main(includes fix: support building on Alpine Linux 3.17+ (musl) without libexecinfo-dev #204 and Lazy load multi-concurrent utilities for cold start improvement #211).Testing